package net.tsingyun.samples.dto;

import javax.validation.constraints.Digits;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;
import net.tsingyun.commons.orm.Extensible;

/**
 * 简单示例|简单示例数据对象
 *
 * @author : liuyk@tsingyun.net
 */
@Data
public class SampleDTO extends Extensible {
    /**
     * 流程实例ID|流程实例ID
     **/
    @Size(max = 40, message = "流程实例ID不能超过40位")
    private String instanceId;

    /**
     * 所属企业编码|所属企业编码
     **/
    @NotBlank(message = "所属企业编码不能为空")
    @Size(max = 20, message = "所属企业编码不能超过20位")
    private String orgCode;

    /**
     * 变更类型ID|变更类型ID
     **/
    @NotNull(message = "变更类型ID不能为空")
    @Digits(integer = 19, fraction = 0, message = "变更类型ID只能为数字")
    private Long changeType;

    /**
     * 编码|编码
     **/
    @NotBlank(message = "编码不能为空")
    @Size(max = 50, message = "编码不能超过50位")
    private String code;

    /**
     * 名称|名称
     **/
    @NotBlank(message = "名称不能为空")
    @Size(max = 50, message = "名称不能超过50位")
    private String name;

    /**
     * 所属部门|所属部门
     **/
    @NotBlank(message = "所属部门不能为空")
    @Size(max = 20, message = "所属部门不能超过20位")
    private String department;

    /**
     * 是否终止 1：未终止0：已终止|是否终止 1：未终止0：已终止
     **/
    private Byte status;

    /**
     * 序号|序号
     **/
    @Digits(integer = 10, fraction = 0, message = "序号只能为数字")
    private Integer sortId;
}